package automaty;

import java.awt.Color;

import komorki.Komorka;


import stany.State;
import stany.deksryptor.StanBinarny;


public class AutomatBinarny extends Automat<AutomatBinarny>{

	public AutomatBinarny(int row, int column, Komorka[][] kom,State state) {
		super(row, column, kom,state);
		
	}

	

	@Override
	protected  void checkNeighbour(int row, int column) {
		map = komorki[row][column].map();
		
		//szary == zywa komorka
		Color zyje = StanBinarny.ZYJE.getColor();
		Integer val = map.get(zyje);
		if(val != null){
			if(val == 3)
				komorki[row][column].setColor(zyje);
			else if(val == 2 && komorki[row][column].getColor().equals(zyje))
				komorki[row][column].setColor(zyje);
			else
				komorki[row][column].setColor(StanBinarny.NIEZYJE.getColor());
		}else{
			komorki[row][column].setColor(StanBinarny.NIEZYJE.getColor());
		}
		
	}



	@Override
	public AutomatBinarny getClone(int row, int col, Komorka[][] kom) {
		// TODO Auto-generated method stub
		return new AutomatBinarny(row,col,kom,state);
	}
	
	

}
